package com.token.sysorg.bean;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
import com.token.sql.IntegrateSql;
import com.token.sql.AbstractTableBean;
/**
 * 组织架构_公司
 * @author 代码创建
 */
public class FSysUnit extends AbstractTableBean {

	private int SysId; //租户ID
	private String SysAddTime; //创建时间
	private String SysAddUser; //创建人
	private String SysEditTime; //修改时间
	private String SysEditUser; //修改人
	private String ParentID; //上级ID
	private String UnitID; //公司ID
	private String UnitName; //公司名称
	private int UnitType; //公司类型
	private String LeaderID; //领导ID
	private String LeaderName; //领导名称
	private String MnagerID; //管理者ID
	private String ManagerName; //管理者名称
	private int IsUse; //是否使用

	public static String TABLE_NAME = "F_Sys_Unit";
	public static String TABLEKEY_NAME = "ComID";
	public FSysUnit (IntegrateSql f){
		super(f,TABLE_NAME);
		this.setKeyName(TABLEKEY_NAME);
	}

	public FSysUnit (IntegrateSql f,ResultSet rs) throws SQLException{
		super(f,TABLE_NAME);
		this.setKeyName(TABLEKEY_NAME);
		this.initParamToRs(rs);
	}

	public FSysUnit (IntegrateSql f,String keyValue) throws SQLException{
		super(f,TABLE_NAME);
		this.setKeyName(TABLEKEY_NAME);
		setCodePrepare(selectCodeById().toString());
		prepareSql.setPstValue(1, keyValue);
		ResultSet rs = executeQuery();
		if(rs.next()){
			initParamToRs(rs);
		}else{
			initParam();
		}
		rs.close();
	}

	@Override
	protected void initParam() {
		SysId = 0; //租户ID
		SysAddTime = ""; //创建时间
		SysAddUser = ""; //创建人
		SysEditTime = ""; //修改时间
		SysEditUser = ""; //修改人
		ParentID = ""; //上级ID
		UnitID = ""; //公司ID
		UnitName = ""; //公司名称
		UnitType = 0; //公司类型
		LeaderID = ""; //领导ID
		LeaderName = ""; //领导名称
		MnagerID = ""; //管理者ID
		ManagerName = ""; //管理者名称
		IsUse = 0; //是否使用
	}


	public void initParamToRs(ResultSet rs) throws SQLException{
		SysId = rs.getInt("SysId"); //租户ID
		SysAddTime = rs.getString("SysAddTime"); //创建时间
		SysAddUser = rs.getString("SysAddUser"); //创建人
		SysEditTime = rs.getString("SysEditTime"); //修改时间
		SysEditUser = rs.getString("SysEditUser"); //修改人
		ParentID = rs.getString("ParentID"); //上级ID
		UnitID = rs.getString("UnitID"); //公司ID
		UnitName = rs.getString("UnitName"); //公司名称
		UnitType = rs.getInt("UnitType"); //公司类型
		LeaderID = rs.getString("LeaderID"); //领导ID
		LeaderName = rs.getString("LeaderName"); //领导名称
		MnagerID = rs.getString("MnagerID"); //管理者ID
		ManagerName = rs.getString("ManagerName"); //管理者名称
		IsUse = rs.getInt("IsUse"); //是否使用
		this.setKeyId(rs.getString("ComID"));
	}


	@Override
	protected int appendData() throws SQLException {
		int i = 1;
		prepareSql.setPstValue(i++,SysId); //租户ID
		prepareSql.setPstValue(i++,SysAddTime); //创建时间
		prepareSql.setPstValue(i++,SysAddUser); //创建人
		prepareSql.setPstValue(i++,SysEditTime); //修改时间
		prepareSql.setPstValue(i++,SysEditUser); //修改人
		prepareSql.setPstValue(i++,ParentID); //上级ID
		prepareSql.setPstValue(i++,UnitID); //公司ID
		prepareSql.setPstValue(i++,UnitName); //公司名称
		prepareSql.setPstValue(i++,UnitType); //公司类型
		prepareSql.setPstValue(i++,LeaderID); //领导ID
		prepareSql.setPstValue(i++,LeaderName); //领导名称
		prepareSql.setPstValue(i++,MnagerID); //管理者ID
		prepareSql.setPstValue(i++,ManagerName); //管理者名称
		prepareSql.setPstValue(i++,IsUse); //是否使用
		return i;
	}


	@Override
	public Vector<String> getFields() {
		Vector<String> vec = new Vector<String>();
		vec.addElement("SysId"); //租户ID
		vec.addElement("SysAddTime"); //创建时间
		vec.addElement("SysAddUser"); //创建人
		vec.addElement("SysEditTime"); //修改时间
		vec.addElement("SysEditUser"); //修改人
		vec.addElement("ParentID"); //上级ID
		vec.addElement("UnitID"); //公司ID
		vec.addElement("UnitName"); //公司名称
		vec.addElement("UnitType"); //公司类型
		vec.addElement("LeaderID"); //领导ID
		vec.addElement("LeaderName"); //领导名称
		vec.addElement("MnagerID"); //管理者ID
		vec.addElement("ManagerName"); //管理者名称
		vec.addElement("IsUse"); //是否使用
		return vec;
	}


	/**
	 * 设置租户ID
	 * @param sysid
	 */
	public void setSysId(int sysid){
		SysId = sysid;
	}
	/**
	 * 获取SysId
	 * @return 租户ID
	 */
	public int getSysId(){
		return SysId;
	}

	/**
	 * 设置创建时间
	 * @param sysaddtime
	 */
	public void setSysAddTime(String sysaddtime){
		SysAddTime = sysaddtime;
	}
	/**
	 * 获取SysAddTime
	 * @return 创建时间
	 */
	public String getSysAddTime(){
		return SysAddTime;
	}

	/**
	 * 设置创建人
	 * @param sysadduser
	 */
	public void setSysAddUser(String sysadduser){
		SysAddUser = sysadduser;
	}
	/**
	 * 获取SysAddUser
	 * @return 创建人
	 */
	public String getSysAddUser(){
		return SysAddUser;
	}

	/**
	 * 设置修改时间
	 * @param sysedittime
	 */
	public void setSysEditTime(String sysedittime){
		SysEditTime = sysedittime;
	}
	/**
	 * 获取SysEditTime
	 * @return 修改时间
	 */
	public String getSysEditTime(){
		return SysEditTime;
	}

	/**
	 * 设置修改人
	 * @param sysedituser
	 */
	public void setSysEditUser(String sysedituser){
		SysEditUser = sysedituser;
	}
	/**
	 * 获取SysEditUser
	 * @return 修改人
	 */
	public String getSysEditUser(){
		return SysEditUser;
	}

	/**
	 * 设置上级ID
	 * @param parentid
	 */
	public void setParentID(String parentid){
		ParentID = parentid;
	}
	/**
	 * 获取ParentID
	 * @return 上级ID
	 */
	public String getParentID(){
		return ParentID;
	}

	/**
	 * 设置公司ID
	 * @param unitid
	 */
	public void setUnitID(String unitid){
		UnitID = unitid;
	}
	/**
	 * 获取UnitID
	 * @return 公司ID
	 */
	public String getUnitID(){
		return UnitID;
	}

	/**
	 * 设置公司名称
	 * @param unitname
	 */
	public void setUnitName(String unitname){
		UnitName = unitname;
	}
	/**
	 * 获取UnitName
	 * @return 公司名称
	 */
	public String getUnitName(){
		return UnitName;
	}

	/**
	 * 设置公司类型
	 * @param unittype
	 */
	public void setUnitType(int unittype){
		UnitType = unittype;
	}
	/**
	 * 获取UnitType
	 * @return 公司类型
	 */
	public int getUnitType(){
		return UnitType;
	}

	/**
	 * 设置领导ID
	 * @param leaderid
	 */
	public void setLeaderID(String leaderid){
		LeaderID = leaderid;
	}
	/**
	 * 获取LeaderID
	 * @return 领导ID
	 */
	public String getLeaderID(){
		return LeaderID;
	}

	/**
	 * 设置领导名称
	 * @param leadername
	 */
	public void setLeaderName(String leadername){
		LeaderName = leadername;
	}
	/**
	 * 获取LeaderName
	 * @return 领导名称
	 */
	public String getLeaderName(){
		return LeaderName;
	}

	/**
	 * 设置管理者ID
	 * @param mnagerid
	 */
	public void setMnagerID(String mnagerid){
		MnagerID = mnagerid;
	}
	/**
	 * 获取MnagerID
	 * @return 管理者ID
	 */
	public String getMnagerID(){
		return MnagerID;
	}

	/**
	 * 设置管理者名称
	 * @param managername
	 */
	public void setManagerName(String managername){
		ManagerName = managername;
	}
	/**
	 * 获取ManagerName
	 * @return 管理者名称
	 */
	public String getManagerName(){
		return ManagerName;
	}

	/**
	 * 设置是否使用
	 * @param isuse
	 */
	public void setIsUse(int isuse){
		IsUse = isuse;
	}
	/**
	 * 获取IsUse
	 * @return 是否使用
	 */
	public int getIsUse(){
		return IsUse;
	}

}
